<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%-- <%@include file="/pages/jyy/jsandcss.jsp" %> --%>
<%@include file="/pages/hy/common.jsp"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>生产计划</title>
<script type="text/javascript">
$(function () {
	
	$('#tb_departments2').hide();
    //1.初始化Table
    var oTable = new TableInit();
    oTable.Init();

    //2.初始化Button的点击事件
    var oButtonInit = new ButtonInit();
    oButtonInit.Init();
    
    //时间控件
    layui.use([ 'laydate' ], function() {
		var laydate = layui.laydate;
	});
    
    //带条件查询
    $("#btn_query").click(function(){
    	 $('#tb_departments').bootstrapTable('refresh');
    });
    
    //去添加页面
    $("#btn_add").click(function(){
        window.location.href="${pageContext.request.contextPath }/jy/toCreateplan.do";
    });
    
    //提交审批
    $("#btn_subsp").click(function(){
    	var a= $('#tb_departments').bootstrapTable('getSelections');  
    	if(a[0].state == "审批完成") {
    		toastr.warning('审批已完成');
    		return;
    	}
        var ids = "";
        for(var i = 0;i<a.length;i++) {
       	 if(i != a.length-1) {
       	 	ids +=a[i].id+",";
       	 }else {
       	 	ids +=a[i].id;
       	 }
        }
   		$.ajax({
   	        type: "POST",
   	        url: "${pageContext.request.contextPath }/jy/startApply.do",
   	        data: {ids:ids},
   	        dataType: "json",
   	        success: function(data){
   	        	if(data == 1) {
   					toastr.success("审批成功");
   	        		  $('#tb_departments').bootstrapTable('refresh');
   	        	}
   	        }
   	    }); 
    });
    //撤销审批
    $("#btn_cxsp").click(function(){
    	var a= $('#tb_departments').bootstrapTable('getSelections');  
    	if(a[0].state == "审批完成") {
    		toastr.warning('审批已完成');
    		return;
    	}
    });
    
    //导出当前页
    $("#btn_export").click(function(){
    	alert("导出");
      //  window.location.href="${pageContext.request.contextPath }/jy/exportProductPlan.do";
    });
    
    //作业关闭
    $("#btn_shudown").click(function(){
    	var a= $('#tb_departments1').bootstrapTable('getSelections'); 
    	if (a.length <= 0) {
    		toastr.warning('请选择一条数据');
    	} else {
    		$.ajax({
    	        type: "POST",
    	        url: "${pageContext.request.contextPath }/jy/shutdwonPlandetail.do",
    	        data: {id:a[0].id},
    	        dataType: "json",
    	        success: function(data){
    	        	if(data == 1) {
    	        		toastr.success("关闭成功"); 
    	        		  $('#tb_departments1').bootstrapTable('refresh');
    	        	}
    	        }
    	    }); 
    	}
    });
    
    
    //点击日期选择
	 $('#txt_search_time').change(function () {
		 
		 
		$("#end_time").val(CurentTime());
		 
		 var dm=$('#txt_search_time').val();
		 
		 if (dm=='1') {
				
			 $("#atart_time").val(CurentTime());
			 
		} else if (dm=='3'){
			
			$("#atart_time").val(getPreMonth(CurentTime()));
				
		} else if (dm=='2') {
			
			 $("#atart_time").val(getWeek());
			
		} else if(dm=='0') {
			$("#atart_time").val('');
			 $("#end_time").val('');
		}
		// $('#atart_time').datetimepicker('update'); 
	 });
    
});

/**
 * 获取当前时间
 * 格式为yyyy-mm-dd的日期
 */
 function CurentTime() {
	 
	 var date = new Date();
	    var seperator1 = "-";
	    var seperator2 = ":";
	    var month = date.getMonth() + 1;
	    var strDate = date.getDate();
	    if (month >= 1 && month <= 9) {
	        month = "0" + month;
	    }
	    if (strDate >= 0 && strDate <= 9) {
	        strDate = "0" + strDate;
	    }
	    var currentdate = date.getFullYear() + seperator1 + month + seperator1 + strDate;
	    return currentdate;
 }
 
 /**
  * 获取上一个月
  *
  * @date 格式为yyyy-mm-dd的日期，如：2014-01-25
  */
 function getPreMonth(date) {
     var arr = date.split('-');
     var year = arr[0]; //获取当前日期的年份
     var month = arr[1]; //获取当前日期的月份
     var day = arr[2]; //获取当前日期的日
     var days = new Date(year, month, 0);
     days = days.getDate(); //获取当前日期中月的天数
     var year2 = year;
     var month2 = parseInt(month) - 1;
     if (month2 == 0) {
         year2 = parseInt(year2) - 1;
         month2 = 12;
     }
     var day2 = day;
     var days2 = new Date(year2, month2, 0);
     days2 = days2.getDate();
     if (day2 > days2) {
         day2 = days2;
     }
     if (month2 < 10) {
         month2 = '0' + month2;
     }
     var t2 = year2 + '-' + month2 + '-' + day2;
     return t2;
 }
 
 /*
 * 获取上周日期
 * 格式:yyyy-MM-dd
 */
 function getWeek() {
	 
	 var now = new Date();
	 var date = new Date(now.getTime() - 7 * 24 * 3600 * 1000);
	 var year = date.getFullYear();
	 var month = date.getMonth() + 1;
	 if (month < 10) {
		month = '0'+month;
	}
	 
	 var day = date.getDate();
	 
	 if (day < 10) {
		 day = '0'+day;
	}
	 
	 var xingqi=year + '-' + month + '-' + day;
	 //alert(year + '-' + month + '-' + day  + ' ' + hour + ':' + minute + ':' + second);
	 return xingqi;
 }


var TableInit = function () {
    var oTableInit = new Object();
    //初始化Table
    oTableInit.Init = function () {
        $('#tb_departments').bootstrapTable({
            url: '${pageContext.request.contextPath }/jy/selectPlan.do',         //请求后台的URL（*）
            method: 'get',                      //请求方式（*）
            toolbar: '#toolbar',                //工具按钮用哪个容器
            striped: true,                      //是否显示行间隔色
            cache: false,                       //是否使用缓存，默认为true，所以一般情况下需要设置一下这个属性（*）
            pagination: true,                   //是否显示分页（*）
            sortable: false,                     //是否启用排序
            sortOrder: "asc",                   //排序方式
            queryParams: oTableInit.queryParams,//传递参数（*）
            sidePagination: "server",           //分页方式：client客户端分页，server服务端分页（*）
            pageNumber:1,                       //初始化加载第一页，默认第一页
            pageSize: 10,                       //每页的记录行数（*）
            pageList: [10,20,30],        //可供选择的每页的行数（*）
            clickToSelect: true,                //是否启用点击选中行
            height: 400,                        //行高，如果没有设置height属性，表格自动根据记录条数觉得表格高度
            uniqueId: "ID",                     //每一行的唯一标识，一般为主键列
            detailView: false,                   //是否显示父子表
            columns: [{
                checkbox: true 
            }, {
                field: 'plannum',
                title: '计划单号'
            }, {
                field: 'remark',
                title: '生产计划日期'
            },{
            	field: 'state',
                title: '审批状态'
            }],
            
            onCheck: function (row) {
                //单行最前面的checkbox被选中
                var a= $('#tb_departments').bootstrapTable('getSelections'); 
                //获取选中行的计划单号。根据计划单号查询计划单中的详情，并显示到下方表格中
                $('#tb_departments1').bootstrapTable(  
      	              "refresh",  
      	              {  
      	            	url: '${pageContext.request.contextPath }/jy/selectPlanDetail.do?plannum='+a[0].plannum,         //请求后台的URL（*）
      	              }  
      	     	  ); 
            },
        });
        
        $('#tb_departments1').bootstrapTable({
            method: 'get',                      //请求方式（*）
            singleSelect : true,                // 单选checkbox 
            striped: true,                      //是否显示行间隔色
            cache: false,                       //是否使用缓存，默认为true，所以一般情况下需要设置一下这个属性（*）
            pagination: true,                   //是否显示分页（*）
            sortable: false,                     //是否启用排序
            sortOrder: "asc",                   //排序方式
            queryParams: oTableInit.queryParams,//传递参数（*）
            sidePagination: "server",           //分页方式：client客户端分页，server服务端分页（*）
            pageNumber:1,                       //初始化加载第一页，默认第一页
            pageSize: 10,                       //每页的记录行数（*）
            pageList: [10,20,30],        //可供选择的每页的行数（*）
            clickToSelect: true,                //是否启用点击选中行
            height: 300,                        //行高，如果没有设置height属性，表格自动根据记录条数觉得表格高度
            uniqueId: "ID",                     //每一行的唯一标识，一般为主键列
            detailView: false,                   //是否显示父子表
            columns: [{
                checkbox: true
            }, {
                field: 'cartype',
                title: '车种'
            }, {
                field: 'pnum',
                title: '品编'
            }, {
                field: 'pname',
                title: '品名'
            }, {
            	field: 'pwdate',
                title: '计划完工日期'
            },{
                field: 'remartk1',
                title: '计划数量'
            },{
            	field: 'nnum',
                title: '当前完成数量'
            },{
            	field: 'snum',
                title: '剩余数量'
            } ,{
            	field: 'wstape',
                title: '状态'
            } ]
        });
        
    };
    
    //得到查询的参数
    oTableInit.queryParams = function (params) {
        var temp = {   //这里的键的名字和控制器的变量名必须一直，这边改动，控制器也需要改成一样的
            limit: params.limit,   //页面大小
            offset: params.offset,  //页码
            state: $("#state").val(),
            stime: $("#atart_time").val(),
            etime: $("#end_time").val()
        };
        return temp;
    };
    return oTableInit;
};


var ButtonInit = function () {
    var oInit = new Object();
    var postdata = {};

    oInit.Init = function () {
        //初始化页面上面的按钮事件
    };

    return oInit;
};

//修改
function doUpdate() {
	var a= $('#tb_departments').bootstrapTable('getSelections');  
	if(a.length == 1) {
		//判断计划单的状态，"未提交/审核未通过"
		if(a[0].state == "未提交" ||a[0].state == "审批未通过"  ) {
		 window.location.href="${pageContext.request.contextPath }/jy/toEditplan.do?id="+a[0].id;
		}else {
			toastr.warning('对不起，此计划单不能修改');
			return;
		}
	}else {
		toastr.warning('请选择一条数据');
	}
};

//删除（删除前要判断计划单的状态）
function doDelete() {
	var a= $('#tb_departments').bootstrapTable('getSelections'); 
	if (a.length <= 0) {
		toastr.warning('请至少选择一条数据');
	} else {
		 var ids = "";
	        for(var i = 0;i<a.length;i++) {
	        	  //判断计划单的状态，"未提交/审核未通过"
				if(a[i].state == "未提交" ||a[i].state == "审批未通过" ) {
					
				}else {
					toastr.warning('对不起，计划单中存在不能删除的记录');
					return;
				}
	       	 if(i != a.length-1) {
	       	 	ids +=a[i].id+",";
	       	 }else {
	       	 	ids +=a[i].id;
	       	 }
	        }
	        
    	//询问框
		Ewin.confirm({message : "确认要删除选择的数据吗？"}).on(
			function(e) {
				if (!e) {return;}
				$.ajax({
			        type: "POST",
			        url: "${pageContext.request.contextPath }/jy/deletePlan.do",
			        data: {pids:ids},
			        dataType: "json",
			        success: function(data){
			        	if(data > 0) {
			        		toastr.success("删除成功"); 
			        		  $('#tb_departments').bootstrapTable('refresh');
			        		  $('#tb_departments1').bootstrapTable('refresh');
			        	}
			        }
			    });
		 });
	}
}

</script>
</head>
<body>
	<div class="panel-body" style="padding-bottom:0px;">
        <div class="panel panel-default">
            <div class="panel-heading">查询条件</div>
            <div class="panel-body">
                <form id="formSearch" class="form-horizontal">
                     <div class="form-group">
                     <label for="loginname" class="control-label col-sm-1">状态:</label>
                     <div class="col-sm-2">
                         <select class="selectpicker show-tick form-control" name="state" id="state" >
					      <option value="">所有</option>
					      <option value="未提交">未提交</option>
					      <option value="审批中">审批中</option>
					      <option value="审批完成">审批完成</option>
					      <option value="审批未通过">审批未通过</option>
					    </select>
					    </div>
                       <label class="control-label col-sm-1" for="txt_search_departmentname">日期:</label>
                        <div class="col-sm-2">
                            <select id="txt_search_time" name="remark" class="form-control">
		                         <option value="0">所有时间</option>
		                         <option value="1">最近一天</option>
		                         <option value="2">最近一星期</option>
		                         <option value="3">最近一个月</option>
                        	 </select>
                        </div>
                        <label class="control-label col-sm-1" for="txt_search_statu" style="width: 30px;">从</label> 
                        <div class="col-sm-2">
                        	<input class="form_datetime form-control" type="text" id="atart_time" name="arrtime" readonly >
                        	<!-- <input type="text"  id="atart_time" name="arrtime" placeholder="yyyy-MM-dd"
									autocomplete="on" class="layui-input" onclick="layui.laydate({elem: this})"> -->
                        </div>
                        <label class="control-label col-sm-1" for="txt_search_statu"  style="width: 30px;padding-left: 0px;">至</label> 
                        <div class="col-sm-2" style="padding-left: 0px;">
                        	<input class="form_datetime form-control"  type="text" id="end_time" name="arrtime" readonly >
                       		<!-- <input type="text"  id="end_time" name="arrtime" placeholder="yyyy-MM-dd"
									autocomplete="on" class="layui-input" onclick="layui.laydate({elem: this})"> -->
                        </div>
                        <div class="col-sm-1" style="text-align:left;">
                            <button type="button" style="margin-left:50px" id="btn_query" class="btn btn-primary">查询</button>
                        </div>
                    </div>
                </form>
            </div>
        </div>       

        <div id="toolbar" class="btn-group">
            <button id="btn_add" type="button" class="btn btn-default">
                <span class="glyphicon glyphicon-plus" aria-hidden="true"></span>新增
            </button>
            <button id="btn_edit" type="button" class="btn btn-default" onclick="doUpdate()">
                <span class="glyphicon glyphicon-pencil" aria-hidden="true"></span>修改
            </button>
            <button id="btn_delete" type="button" class="btn btn-default" onclick="doDelete()">
                <span class="glyphicon glyphicon-remove" aria-hidden="true"></span>删除
            </button>
            <button id="btn_subsp" type="button" class="btn btn-default">
                <span class="glyphicon glyphicon-phone" aria-hidden="true"></span>审批
            </button>
            <!-- <button id="btn_sp" type="button" class="btn btn-default">
                <span class="glyphicon glyphicon-pawn" aria-hidden="true"></span>审批
            </button>-->
            <button id="btn_cxsp" type="button" class="btn btn-default">
                <span class="glyphicon glyphicon-bishop" aria-hidden="true"></span>撤销审批
            </button> 
            <button id="btn_shudown" type="button" class="btn btn-default">
                <span class="glyphicon glyphicon-off" aria-hidden="true"></span>关闭
            </button>
           <!--  <button id="btn_export" type="button" class="btn btn-default">
                <span class="glyphicon glyphicon-remove" aria-hidden="true"></span>导出
            </button> -->
        </div>
        <table id="tb_departments"></table>
        <br/>
        <table id="tb_departments1"></table>
    </div>
</body>
</html>